package eSchool.Utils;

import eSchool.Application.State.DataState;
import eSchool.BL.Aluno;
import eSchool.BL.AlunoInscrito;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class Import {

    private String commaCode = "[comma]";

    public Import() {
    }

    /**
     * Lê do ficheiro
     * <p>
     * @param  String fileName, recebe o nome do ficheiro de clientes.
     */
    public void load(String fileName) throws IOException, Exception {

        BufferedReader fIn = null;
        String line = null;
        String disciplina[] = fileName.split("_");

        fIn = new BufferedReader(new FileReader(fileName));

        while ((line = fIn.readLine()) != null) {
            this.load(disciplina[0], line, commaCode);
        }

        if (fIn != null) {
            fIn.close();
        }
    }

    /**
     * Importação do ficheiro CSV
     * <p>
     * @param  String line, recebe o linha com os atributos a ler do ficheiro.
     * @param  String separator, recebe qual o separador de divisão dos atributos.
     */
    public void load(String codDisciplina, String line, String separator) throws IOException, Exception {

        String arr[] = line.split(separator);
        Aluno aluno = DataState.getConnection().getAluno(arr[1]);

        for (int i = 0; i < aluno.getInscricoes().size(); i++) {
            if (aluno.getInscricoes().get(i).getCodDisciplina().compareTo(codDisciplina) == 1) {
                
                aluno.getInscricoes().get(i).setNota(Float.parseFloat(arr[3]));
            }
        }

    }
}
